package com.bsj.pay.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.bsj.pay.model.OrderBean;

@Mapper
public interface OrderDao extends BaseDao<OrderBean>{
	
	List<OrderBean> getNeedCheckOrderList(@Param("query_time_out")int query_time_out);
	
	List<OrderBean> getNeedCheckOrderAccountIdList(@Param("query_time_out")int query_time_out);
	
	List<OrderBean> getNeedCheckAliOrderAccountIdList(@Param("query_time_out")int query_time_out);
	
	List<OrderBean> getNeedCancelOrderList();
	
	List<String> queryOfficialOrderNoList(Long chargeAccountId);
	
	List<OrderBean> needGetCdkeyList();
	
	List<OrderBean> needSendCdkeySmsList();
	
	List<OrderBean> queryDayList(OrderBean order);
	
	List<OrderBean> notGetCdkList(OrderBean order);
	
	OrderBean selectByOfficialOrderNo(String officialOrderNo);
	
	OrderBean getLastByChargeAccountId(Long chargeAccountId);
	
	OrderBean selectLastByChargeAccount(String charge_account);
	
	long getingCdkCount(Long account_id);
	
	double sumMoney(OrderBean order);
	
	int insertTemp(OrderBean order);
	
	int reGetAll();
	
	int receiveGetCdkSmsTimeOut();
	
	int updateGetCdkSmsBySendTime(@Param("phone")String phone, @Param("verCode")String verCode);
	
	int removeByTime(@Param("startTime")long startTime,@Param("endTime")long endTime);
	
	List<OrderBean> queryDayFinanceList(OrderBean order);
	
}
